/**
 * 尊敬的用户，你好：页面 JS 面板是高阶用法，一般不建议普通用户使用，如需使用，请确定你具备研发背景，能够自我排查问题。
 * 我们可以用 JS 面板来开发一些定制度高功能，比如：调用API接口，自定义动作执行等等。
 */

// 当页面渲染完毕后马上调用下面的函数
export function didMount() {
    console.log("「页面 JS」：当前页面地址 " + location.href);

    // 获取DOM元素
    const elements = {
        punishmentCount: this.$$("container_6aelur"),  // 行政处罚数量
        ordinaryProcedure: this.$$("container_dnu90k"), // 普通程序
        summaryProcedure: this.$$("container_8kwn1c"),  // 简易程序
        entityValidity: this.$$("text_8z8ken"),  // 实体合法性
        procedureStandard: this.$$("text_gcm45d"),  // 程序规范性
        evidenceQuality: this.$$("text_fd0zj3"),  // 证据质量
        documentManagement: this.$$("text_dw7ijp"),  // 文书制作与案卷管理
        discretionPower: this.$$("text_9gd89m"),  // 自由裁量权行使
        enforcementEffect: this.$$("text_1oegym"),  // 执法效果与社会影响
        infoDisclosure: this.$$("text_hkfhcw"),  // 信息公开
        integrityDiscipline: this.$$("text_41ci0m"),  // 廉洁与纪律
        listTitle: this.$$("text_6kvhmu")  // 列表标题
    };

    // 设置按钮样式
    const setButtonStyle = (element) => {
        if (element && element.$el) {
            element.$el.style.cursor = 'pointer';
            element.$el.style.transition = 'all 0.2s ease';
            // 添加悬停效果
            element.$el.addEventListener('mouseenter', () => {
                element.$el.style.transform = 'scale(1.02)';
                element.$el.style.boxShadow = '0 2px 8px rgba(0,0,0,0.1)';
            });
            element.$el.addEventListener('mouseleave', () => {
                element.$el.style.transform = 'scale(1)';
                element.$el.style.boxShadow = 'none';
            });
        }
    };

    // 为所有按钮设置样式
    Object.values(elements).forEach(setButtonStyle);

    // 按钮点击处理函数
    const handleButtonClick = (buttonName) => {
        const titleMap = {
            punishmentCount: '行政处罚预警清单',
            ordinaryProcedure: '普通程序预警清单',
            summaryProcedure: '简易程序预警清单',
            entityValidity: '实体合法性预警清单',
            procedureStandard: '程序规范性预警清单',
            evidenceQuality: '证据质量预警清单',
            documentManagement: '文书制作与案卷管理预警清单',
            discretionPower: '自由裁量权行使预警清单',
            enforcementEffect: '执法效果与社会影响预警清单',
            infoDisclosure: '信息公开预警清单',
            integrityDiscipline: '廉洁与纪律预警清单'
        };

        if (elements.listTitle && titleMap[buttonName]) {
            console.log(`${buttonName}按钮被点击`);
            elements.listTitle.$$setValue(titleMap[buttonName]);
        }
    };

    // 为所有按钮添加点击事件
    Object.keys(elements).forEach(key => {
        if (key !== 'listTitle' && elements[key] && elements[key].$el) {
            elements[key].$el.addEventListener("click", () => handleButtonClick(key));
        }
    });

}
